package br.tce.ufs.appcoleta_mobile;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import br.tce.ufs.appcoleta_mobile.dao.ObraServicoDao;
import br.tce.ufs.appcoleta_mobile.entities.ObraServico;
import br.tce.ufs.appcoleta_mobile.entities.UnidadeGestora;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.TextView;

public class SelecaoObras extends Activity {
	
	private static UnidadeGestora unidadeGestora;
	private ObraServicoDao obraServico;
	private TextView txwUnidadeGestora;
	public SelecaoObras(UnidadeGestora unidadeGest){
		unidadeGestora = unidadeGest;
		
	}
	public SelecaoObras(){
	}
	
	@Override
	protected void onCreate(Bundle savedInstanceState){
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_obras);
		txwUnidadeGestora = (TextView)findViewById(R.id.txtUnidadeGestora);
		txwUnidadeGestora.setText(unidadeGestora.getNm_Unidade());
		obraServico = new ObraServicoDao(getApplicationContext());
		List<ObraServico> obraServicos = obraServico.listaObras(unidadeGestora.getCd_Unidade());
		if(obraServicos != null)
		   lisObrasServico(obraServicos);
	}
	
	private void lisObrasServico(List<ObraServico> obraservicos){
		obraServico = new ObraServicoDao(getApplicationContext());
		ListView lv = (ListView)findViewById(R.id.lista_obras);
		ArrayList<HashMap<String, String>> objArayList = new ArrayList<HashMap<String, String>>();

		for (ObraServico obraServico : obraservicos) {
			HashMap<String, String> listData = new HashMap<String, String>();
			listData.put("Codigo",String.valueOf(obraServico.getSq_Obra()));
			listData.put("Descricao", obraServico.getDe_ObjetObra());

			objArayList.add(listData);
		}
		String[] from = { "Codigo", "Descricao" };
		int[] to = { R.id.sq_Obra, R.id.de_ObjetObra };

		SimpleAdapter listAdapter = new SimpleAdapter(this, objArayList,
				R.layout.list_obras, from, to);
		lv.setAdapter(listAdapter);
		lv.setOnItemClickListener(new OnItemClickListener(){
			public void onItemClick(AdapterView<?> parent, View view,
					int position, long id) {
				// TODO Auto-generated method stub
				String cod = ((TextView)view.findViewById(R.id.sq_Obra)).getText().toString();
				int sq_obra = Integer.parseInt(cod);
				ObrasOpcoes op = new ObrasOpcoes(obraServico.getById(sq_obra));
				Intent it = new Intent(getApplicationContext(), op.getClass());
				startActivity(it);
				
			}
		});
		
		
	}

}
